"""
1.面向对象：
题目 1：任务管理系统
设计一个 Task 类和一个 TaskManager 类，包含以下属性和方法：
Task 类：
属性：name、description、status（可以是 "pending"、"in progress"、"completed"）
方法：get_details()、mark_as_in_progress()、mark_as_completed()
TaskManager 类：
属性：tasks（一个包含 Task 对象的列表）
方法：add_task(task)、remove_task(name)、get_task_details(name)、get_all_tasks()
"""


class Task:
    def __init__(self, name, description):
        self.name = name
        self.description = description
        self.status = ["pending", "in progress", "completed"]

    def get_details(self):
        return self.description

    def mark_as_in_progress(self):
        return self.status[1]

    def mark_as_completed(self):
        return self.status[2]


class TaskManager:
    def __init__(self):
        self.task_list = []

    def add_task(self, task:Task):
        self.task_list.append(task)
        return f'新任务添加成功,名称是{task.name},描述内容{task.description},任务状态{task.status[0]}'

    def remove_task(self, name):
        for i in self.task_list:
            if name == i.name:
                self.task_list.remove(i)
                return f'名称为{name}的任务已删除'
        return "未找到该任务"

    def get_task_details(self, name:Task):
        for i in self.task_list:
            if name == i.name:
                name.description()
                return f'任务描述是{name.description}'

    def get_all_tasks(self):
        return self.task_list


if __name__ == '__main__':
    task1 = Task('任务一', '明天上午十点开会')
    task2 = Task('任务二', '后天有团建活动,请准时参加')
    task3 = Task('任务三', '今天晚上加班,勿早走')
    taskmanager = TaskManager()
    print(taskmanager.add_task(task1))
    print(taskmanager.add_task(task2))
    print(taskmanager.add_task(task3))
    print(taskmanager.remove_task('任务一'))
    print(taskmanager.get_all_tasks())







